﻿/* File Created: abril 22, 2013 */

$(document).ready(function () {
    $('#btnAgregarRequerimiento').button();

    cargarRequerimientos();
    cargarSelectProyectos();

    function cargarSelectProyectos() {
        $.post(window.location.href, { action: 'CargarSelectProyectos', id: 'selectProyectos' }, function (response) {
            $('#divSeleccionarProyecto').html('Seleccionar proyecto: ' + response);

            $('#selectProyectos').change(function () {
                cargarRequerimientos();
            });

            cargarRequerimientos();
        });
    }

    function cargarRequerimientos() {
        $.post(window.location.href, { action: 'CrearContenidoRequerimientos', proyecto: $('#selectProyectos').val() }, function (response) {
            $('#divRequerimientos').html(response);
            $('#divRequerimientos').show('fade', 500);

            modificarRequerimiento();
            eliminarRequerimiento();
        });
    }

    function modificarRequerimiento() {
        $('#tblRequerimientos').on({
            click: function () {
                var boton = $(this);

                var id = boton.attr('data-id');
                var descripcion = boton.attr('data-descripcion');
                var prioridad = boton.attr('data-prioridad');

                var renderModal = '<table>' +
                                    '<tr>' +
                                    '<td>Descripción: </td><td><input type="text" id="txtDescripcion" maxlength="50" value="' + descripcion + '" /></td>' +
                                    '</tr>' +
                                    '<tr>' +
                                    '<td>Prioridad: </td><td><input type="text" id="txtPrioridad" maxlength="3" value="' + prioridad + '" /></td>' +
                                    '</tr>' +
                                    '</table>';

                $('#modal').html(renderModal);

                $('#modal').dialog({
                    title: 'Modificación de Requerimiento',
                    resizable: false,
                    draggable: false,
                    modal: true,
                    width: 350,
                    height: 300,
                    show: {
                        effect: "blind",
                        duration: 300
                    },
                    hide: {
                        effect: "blind",
                        duration: 300
                    },
                    buttons: {
                        Aceptar: function () {
                            var currentDescripcion = $('#txtDescripcion').val();
                            var currentPrioridad = $('#txtPrioridad').val();
                            $.post(window.location.href, { action: 'ModificarRequerimiento', id: id, descripcion: currentDescripcion, prioridad: currentPrioridad, proyecto: $('#selectProyectos').val() }, function (response) {
                                dialogo(response);
                                cargarRequerimientos();
                            });
                        },
                        Cancelar: function () {
                            $(this).dialog('close');
                        }
                    }
                });
            }
        }, 'span#btnEditarRequerimiento');
    }

    function eliminarRequerimiento() {
        $('#tblRequerimientos').on({
            click: function () {
                var boton = $(this);

                var id = boton.attr('data-id');

                $('#modal').html('¿Está seguro que desea eliminar este Requerimiento?');

                $('#modal').dialog({
                    title: 'Eliminación de Requerimiento',
                    resizable: false,
                    draggable: false,
                    modal: true,
                    width: 400,
                    height: 150,
                    show: {
                        effect: "blind",
                        duration: 300
                    },
                    hide: {
                        effect: "blind",
                        duration: 300
                    },
                    buttons: {
                        Aceptar: function () {
                            $.post(window.location.href, { action: 'EliminarRequerimiento', id: id }, function (response) {
                                dialogo(response);
                                cargarRequerimientos();
                            });
                        },
                        Cancelar: function () {
                            $(this).dialog('close');
                        }
                    }
                });
            }
        }, 'span#btnEliminarRequerimiento');
    }

    $('#btnAgregarRequerimiento').click(function () {

        $.post(window.location.href, { action: 'CrearDialogoAgregarRequerimiento' }, function (response) {
            $('#modal').html(response);
        });

        $('#modal').dialog({
            title: 'Crear nuevo Requerimiento',
            resizable: false,
            draggable: false,
            modal: true,
            width: 300,
            height: 350,
            show: {
                effect: "blind",
                duration: 300
            },
            hide: {
                effect: "blind",
                duration: 300
            },
            buttons: {
                Aceptar: function () {

                    if ($('#txtDescripcion').val() == '') {
                        $('#txtDescripcion').focus();
                        return false;
                    }

                    if ($('#txtPrioridad').val() == '') {
                        $('#txtPrioridad').focus();
                        return false;
                    }

                    $.post(window.location.href, { action: 'RegistrarRequerimiento', descripcion: $('#txtDescripcion').val(), prioridad: $('#txtPrioridad').val(), proyecto: $('#selectProyectosDialogo').val()
                    }, function (response) {
                        dialogo(response);
                        cargarRequerimientos();
                    });

                    $(this).dialog('close');
                },
                Cancelar: function () {
                    $(this).dialog('close');
                }
            }
        });
    });

    function dialogo(mensaje) {
        $('#modal').dialog({
            title: 'Aviso',
            resizable: false,
            draggable: false,
            modal: true,
            width: 300,
            height: 200,
            show: {
                effect: "fade",
                duration: 200
            },
            hide: {
                effect: "fade",
                duration: 200
            },
            buttons: {
                Aceptar: function () {
                    $(this).dialog('close');
                }
            }
        }).html(mensaje);
    }
});